If congestion in a network constituted by, for example, servers and layer 2 switches, makes the establishment of communications difficult, the servers prevent the congestion from worsening. To prevent worsening of congestion, the servers performs, for example, a rate adjustment by changing a bandwidth used when data, such as packets or frames, are transmitted from a queue.
The rate adjustment performed by a server will be specifically described with reference to FIGS. 18 and 19. FIG. 18 is a schematic diagram illustrating an example of a server that transmits data by using a single queue. FIG. 19 is a schematic diagram illustrating an example of a server that transmits data by using queues provided for respective destination addresses.
A server 1 illustrated in FIG. 18 stores data addressed to a destination address A, data addressed to a destination address B, and data addressed to a destination address C in a single queue and transmits them to a layer 2 switch 2 in the order they are stored. The server 1 illustrated in FIG. 19 creates a queue for the destination address A, a queue for the destination address B, and a queue for the destination address C and transmits the data to the layer 2 switch 2 in the order they are stored in the queues. The layer 2 switch 2 illustrated in FIGS. 18 and 19 transmits, through a transmission port 1, the data addressed to the destination address A or C received from the server 1 and transmits, through a transmission port 2, the data addressed to the destination address B received from the server 1.
For the network illustrated in FIGS. 18 and 19, it is assumed that congestion occurs at the transmission port 1 in the layer 2 switch 2 and that the server detects the congestion. In the case illustrated in FIG. 18, the server 1 prevents the congestion from worsening by performing a rate adjustment of an output port that is formed by a single queue until the congestion is relieved. In the case illustrated in FIG. 19, the server 1 performs a rate adjustment on the queues that output data addressed to the destination addresses A and C, which worsen the congestion, and does not perform a rate adjustment on the queue that outputs data addressed to the destination address B, which does not affect the congestion.    Patent Document 1: Japanese Laid-open Patent Publication No. 2001-177575    Patent Document 2: Japanese Laid-open Patent Publication No. 63-102527
However, the conventional technology has a problem in that data is not efficiently transmitted.
For example, in the method illustrated in FIG. 18, because the rate adjustment is performed on the data addressed to the destination address B that does not affect the congestion, a transmission delay or the like occurs with respect to the data addressed to the destination address B. Accordingly, the method illustrated in FIG. 18 may cause an unwanted transmission delay, and therefore it is hard to transmit data efficiently.
In the method illustrated in FIG. 19, because the rate adjustment is not performed on the data addressed to the destination address B that does not affect the congestion, it is possible to avoid a transmission delay or the like with respect to the data addressed to the destination address B. However, the server 1 uses queues for respective data destinations and a large amount of memory for queues. For example, if five layer 2 switches, each having 48 ports, are connected to a server having 234 queues and if a single queue is 4000 bytes, the amount of memory of the server is 234×4000=936000 bytes. Accordingly, the method illustrated in FIG. 19 uses the large amount of memory, and thus it is hard to efficiently transmit data.